Page({

  /**
   * 页面的初始数据
   */
  data: {
    // 轮播图数据 - 与UI稿完全一致
    slides: [
      {
        title: '专业的技术支持',
        subtitle: '售前售后一体化',
        backgroundImage: 'cloud://cloud1-1ghwzv9vc0d14eef.636c-cloud1-1ghwzv9vc0d14eef-1363443654/home/1.jpg'
      },
      {
        title: '专业的研发能力',
        subtitle: '公司团队有专业的产品开发能力',
        backgroundImage: 'cloud://cloud1-1ghwzv9vc0d14eef.636c-cloud1-1ghwzv9vc0d14eef-1363443654/home/2.jpg'
      },
      {
        title: '丰富的产品线',
        subtitle: '直线电机+振镜+平台',
        backgroundImage: 'cloud://cloud1-1ghwzv9vc0d14eef.636c-cloud1-1ghwzv9vc0d14eef-1363443654/home/3.jpg'
      }
    ],
    currentSlide: 0,
    countdownTime: 10,
    countdownActive: false,
    userInteracted: false
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    // 延迟2秒开始倒计时，让用户看到页面内容
    setTimeout(() => {
      this.startCountdown();
    }, 2000);
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
    
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    console.log('首页显示');
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {
    // 页面隐藏时清除倒计时
    this.clearCountdown();
  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {
    // 页面卸载时清除倒计时
    this.clearCountdown();
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
    
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
    
  },

  /**
   * 轮播图切换事件
   */
  onSlideChange(e) {
    this.setData({
      currentSlide: e.detail.current
    });
  },

  /**
   * 指示器点击事件
   */
  onDotTap(e) {
    const index = e.currentTarget.dataset.index;
    this.setData({
      currentSlide: index
    });
    this.handleUserInteraction();
  },

  /**
   * 开始倒计时
   */
  startCountdown() {
    // 如果用户已经交互过，不开始倒计时
    if (this.data.userInteracted) {
      return;
    }

    this.setData({
      countdownActive: true
    });

    this.countdownInterval = setInterval(() => {
      if (this.data.userInteracted) {
        this.clearCountdown();
        this.resetGuestButton();
        return;
      }

      const newTime = this.data.countdownTime - 1;
      this.setData({
        countdownTime: newTime
      });

      // 倒计时结束
      if (newTime <= 0) {
        this.clearCountdown();
        this.simulatePageTransition();
      }
    }, 1000);
  },

  /**
   * 清除倒计时
   */
  clearCountdown() {
    if (this.countdownInterval) {
      clearInterval(this.countdownInterval);
      this.countdownInterval = null;
    }
  },

  /**
   * 模拟页面跳转效果
   */
  simulatePageTransition() {

    wx.navigateTo({
      url: '/pages/search/search'
    });
  },

  /**
   * 重置游客按钮状态
   */
  resetGuestButton() {
    this.setData({
      countdownActive: false,
      countdownTime: 10
    });
  },

  /**
   * 处理用户交互
   */
  handleUserInteraction() {
    this.setData({
      userInteracted: true
    });
    this.clearCountdown();
    this.resetGuestButton();
  },

  /**
   * 游客模式点击事件
   */
  onGuestMode() {
    this.handleUserInteraction();
    wx.navigateTo({
      url: '/pages/search/search'
    });
  },

  onInfo(event) {
    console.log("----------onInfo----------", event)
    wx.showToast({
      title: event.detail.userInfo.nickName,
      icon: 'none',
      duration: 2000
    });
  },

  getUserInfo() {
    console.log("----------getUserInfo----------")

    wx.authorize({
      scope: 'scope.userInfo',
      success: () => {
        console.log("授权成功")
      }
    })

    wx.getUserInfo({
      success: (res) => {
        console.log("获取用户信息成功", res)
      }
    })
    
  },

  onGetUserInfo(event ) {
    console.log("----------onGetUserInfo----------", event)
  },

  /**
   * 登录按钮点击事件
   */
  onLogin() {
    this.handleUserInteraction();
    this.getUserInfo();
    // 获取用户信息成功后再跳转
    // wx.navigateTo({
    //   url: '/pages/search/search'
    // });
  },

  gotoLogin() {
    wx.navigateTo({
      url: '/pages/login/login'
    });
  },

  


  /**
   * 页面触摸开始事件 - 用于检测用户交互
   */
  onPageTouchStart() {
    this.handleUserInteraction();
  }
})